package com.ywu.sentinel.standard.entity;

import com.ywu.common.entity.CommonEntity;
import lombok.Data;
import lombok.ToString;

/**
 * @ClassName YwuFlowRuleEntity
 * @Description TODO
 * @Author GroundDemo
 * @Date 2025/4/14 18:43
 * @Version 1.0
 **/
@Data
@ToString
public class YwuFlowRuleEntity extends CommonEntity {
    private String id;

    // 应用名称
    private String app;

    // 流控效果  0 快速失败  1 预热  2 排队等待
    private Integer controlBehavior;

    // 单机阈值
    private Integer count;

    // 0 并发线程数  1  QPS
    private Integer grade;

    // 针对来源  default
    private String limitApp;

    // controlBehavior 为 2 时，配置的超时等待时间
    private Integer maxQueueingTimeMs;

    // controlBehavior 为 1 时，配置的预热时间
    private Integer warmUpPeriodSec;

    // 流控模式  0 直接  1 关联  2 链路
    private Integer strategy;

    // strategy为1或2的时候关联的资源名称
    private String refResource;

    // 资源
    private String resource;
}
